﻿using System;

namespace Gamelight
{
	public class ResourceNotFoundException : Exception
	{
		private string fileName;
		private string assemblyName;
		internal ResourceNotFoundException(string assemblyName, string fileName)
		{
			this.fileName = fileName;
			this.assemblyName = assemblyName;
		}

		public override string Message
		{
			get
			{
				return string.Format("The following resource {0} was not found in the assembly {1}", this.fileName, this.assemblyName);
			}
		}
	}

	public class AssemblyNotFoundException : Exception
	{
		private string assemblyName;
		internal AssemblyNotFoundException(string assemblyName)
		{
			this.assemblyName = assemblyName;
		}

		public override string Message
		{
			get
			{
				return string.Format("The following assembly was not found: {0}. An assembly must be registered before you can use it. Assembly names are case sensitive.", this.assemblyName);
			}
		}
	}

	public class InvalidOperationException : Exception
	{
		private string message;
		public InvalidOperationException(string message)
		{
			this.message = message;
		}
		public override string Message
		{
			get
			{
				return this.message;
			}
		}
	}
}